(function($, window, undefined) {
    $.EtTab = $.EtTab || {};
	$.EtTab.list = {};
	
	$.extend($.EtTab, {
        "version": "1.0.0",
		//定义外部扩展方法接口
        "extend": function(methods) {
            $.extend($.fn.EtTab, methods);
			
			if (!this.no_legacy_api) {
				$.fn.extend(methods);
			}
        }
    });
	
	//常用扩展方法
	$.EtTab.extend({
    });
	
	
	$.fn.EtTab = function(options) {
        var _this = this;

		//合并参数
        var config = $.extend({},$.fn.EtTab.defaults, options);
        
		//内部扩展
		var bosom = {
		};

		_this.bosom = bosom;
		_this.config = config;
		
		//初始化
		init(_this);

		$.EtTab.list[config.gridId] = _this;
		
		return _this;
    };
	
	$.fn.EtTab.defaults = {
		tabName: '',
		tabHeader: '',
		tabContent: '',
		tabContentFun : {
		}
    };
	
	/**************************私有方法开始***************************/
	//初始化方法
	function init(_this){
		var _that = _this;
		
		$(_that.config.tabHeader+'>li[fortab="'+_that.config.tabName+'"]').click(function(){
			$(this).addClass('tabhover').siblings().removeClass('tabhover');
			
			$(_that.config.tabContent+'>div[fortab="'+_that.config.tabName+'"]').hide();
			
			var showContent = $('#'+$(this).attr('show')); //当前要显示的内容对象
			
			showContent.show();
			
			//如果是当前Tab内容还有自定义函数
			if(showContent.attr('dosome')=='true' && _that.config.tabContentFun[showContent.attr('dofun')]){
				_that.config.tabContentFun[showContent.attr('dofun')]($(this));
			}
		});
	}
})(jQuery, window);